package com.zxw.flow.api;

import com.zxw.common.core.base.res.BasePageRes;
import com.zxw.common.core.base.res.BaseRes;
import com.zxw.flow.domain.entity.FlowNodesModel;
import com.zxw.flow.domain.entity.FlowType;
import com.zxw.flow.domain.vo.FlowNodesModelVO;
import com.zxw.flow.domain.vo.FlowTypePageVO;
import com.zxw.flow.domain.vo.FlowTypeVO;
import org.springframework.web.bind.annotation.*;

/**
 * @author Xuewei.Zhang
 * @date 2022/7/6
 */
public interface FlowNodesModelApi {
    @GetMapping("/page")
    BasePageRes<FlowNodesModel> page(FlowTypePageVO flowTypePageVO);

    @GetMapping("/{flowNodesModelId}")
    BaseRes<FlowNodesModel> findFlowNodesById(@PathVariable("flowNodesModelId") Long flowNodesModelId);

    @PostMapping("/insert")
    BaseRes<FlowNodesModelVO> insertFlowNodes(@RequestBody FlowNodesModelVO flowNodesModelVO);

    @PutMapping("/update/{flowNodesModelId}")
    BaseRes updateFlowNodes(@PathVariable("flowNodesModelId") Long flowNodesModelId, @RequestBody FlowNodesModelVO flowNodesModelVO);

    @DeleteMapping("/{flowNodesModelIds}")
    BaseRes deleteFlowNodes(@PathVariable("flowNodesModelIds") String flowNodesModelIds);
}
